<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <p id="a"></p>
    <script>
        // 1. "假设某人有 100000 现金，每经过一次路口需要进行一次缴费，缴费规则是：
        // 当现金大于 50000 时每次需要交 5%，如果现金小于等于 50000时每次交5000，请写一个程序计算此人可以经过多少次这个路口"

        // let count=0;  //多少次
        // let x=100000; //10w
        // while(x>5000){    //while循环  这是一个必然条件
        //     if(x>50000){  //>5w
        //         // console.log(11)
        //         x=x-(x*0.05);   //  一次五千  10次
        //         count++
        //     }else if(x<=50000){
        //         // console.log(12)
        //         x=x-5000     //
        //         count++
        //     }

        // }
        // console.log(count)  //23次

        // 2. 写出一个超市结算系统，能够实现对商品的价格进行循环输入，一直到输入"="代表可以开始结算应付金额，
        // 同时弹出实付金额输入窗口；并且根据所付金额来判断是钱不够还是应该找零多少；
        // 可以实现对商品价格的循环输入；(10分)
        // 输入值有误提示输入错误，重新弹窗输入不影响之前输入的金额（10分）
        // 输入"="，计算总价，并且弹出实付金额输入窗口；(5分)

        // 应付金额大于等于600的时候，应付金额打7.5折；（10分）
        // 应付金额大于实付的时候，显示找零金额；应付金额小于实付金额的时候，显示应该补款金额；（5分）
        // 输入实付金额，显示找零的时候，同时显示这次购买过程所获得积分是多少。（10分）
        // 备注：积分兑换比 ：10元兑换1积分，弹窗使用prompt()
//  总价
        // let totalPrice = 0;
        // while (true) {
        //     var price = prompt("请输入您的信息：");
        //     if (price == "=") {
        //         break
        //     } else if (!isNaN(price) && price > 0) {
        //         totalPrice += parseFloat(price)
        //     } else {
        //         alert("输入错误！")
        //     }
        // }
        // if(totalPrice>=600){
        //     totalPrice *= 0.75; // 应付金额大于等于600的时候，应付金额打7.5折
        // }
        // let paidPrice = prompt("请输入实付金额：");
        // if (paidPrice == "=") {
        //     alert("输入错误，请重新输入！");
        // } else if (!isNaN(paidPrice) && paidPrice > 0) {
        //     let change = paidPrice - totalPrice;  //实付-应付 
        //     if (change < 0) {
        //         alert("钱不够，请补款：" + Math.abs(change));
        //     } else {
        //         alert("找零：" + change);
        //     }
        //     let points = Math.floor(change / 10); // 积分兑换比：10元兑换1积分
        //     alert("本次购买获得" + points + "积分！");
        // } else {
        //     alert("输入错误，请重新输入！");
        // }

        //3. "假设从A地到B地的火车票有硬座和硬卧，价格分别为100和190元。根据铁路部门规定，
        //未成年人(18周岁以下)身高不足120cm免票,120(含)-150(不含)cm需半票，150及以上的需全票，
        //未成年人卧铺只能减免硬座的半价。请设计一个购票程序，要求输入年龄和身高(未成人需要输入)以及票的类型，输出票的价 
        // while(true){
        //     var type = prompt("请输入您的票型：");
        //     var age = prompt("请输入您的年龄：");   
        //     var height = prompt("请输入您的身高：");
        //     if(type=="硬座"){
        //         if(age<18&&height<120){
        //             alert("免票")
        //             break
        //         }else if(age<18&&120>=height<150){
        //             alert("50")
        //             break
        //         }else if(age<18&&height>=150){
        //             alert("100")
        //             break
        //         }else{
        //             alert("100")
        //             break
        //         }
        //     }else if(type=="卧铺"){
        //         // 卧铺
        //         if(age<18){
        //             alert("140")
        //             break
        //         }else{
        //             alert("190")
        //             break
        //         }
        //     } 

        // }

        //   三大js组成部分  随机数 箭头函数和普通函数的区别 route和router的区别  出现白屏现象怎么解决？  DOM和BOM 类数组转数组 组合式Api和函数式api的区别

        4.// 银行存5000 每年年化利率4% 如果将5000变为20000需要多少年。 输出需要多少年。
        // 年化利率计算方式 例如本金100元 年利率5% 
        // 第一年将会得到 100+100*0.05=105 
        // 第二年将会得到 105+105*0.05=110.25 。。。。以此类推
        // let year=0;
        // let x=5000
        // while(x>=5000&&x<=20000){
        //     x=x+x*0.04;
        //     year++
        //     console.log(x)
        // }
        // console.log(year)  

        5.//  猜数字：
        //  随机生成一个1-100的数字，作为目标是；
        //  然后用户在输入框输入数字，
        //  如果输入的值大于目标值，那么提升用户输入过大
        //  如果输入的值小于目标值，那么提示用户输入的过小
        //  如果输入正确，提示用户'恭喜您用了n次输入正确，'
        //  如果用户输入5次没有输入成功，那么提示用户'抱歉，您的机会已用完'
        // console.log(Math.floor(Math.random()*100+1))
        // let targetNumber=Math.floor(Math.random()*10+1);
        // document.getElementById("a").innerHTML=targetNumber
        // let writenumber=Number(prompt("请输入数字："));
        // let count=0
        // while(true){
        //     if(count<=5){
        //         if(writenumber>targetNumber){
        //             //如果输入的值大于目标值
        //             alert("用户输入过大")
        //             count++
        //             // continue
        //             writenumber=Number(prompt("请输入数字："));
        //             // break
        //         }
        //         else if(writenumber<targetNumber){
        //             //如果输入的值小于目标值
        //             alert("用户输入过小")
        //             count++
        //             writenumber=Number(prompt("请输入数字："));
        //             // continue
        //             // break
        //         }else if(writenumber=targetNumber){
        //             alert(`恭喜您用了${count}次输入正确`)
        //             break
        //         }
        //         // break
        //     }else{
        //         alert(`抱歉，您的机会已用完`)
        //         break
        //     }

        // }

        6.// .随机颜色
        // 封装一个randomColor函数;实现生成一个十六进制的随机颜色；
        // function randomColor(){
            // return '#'+Math.floor(Math.random()*16777215).toString(16);
        // }
        // console.log(randomColor())

        7//
        // var bar = 1;
        // function test() {
        //     console.log(bar);  //undefined  在局部作用域中
        //     var bar = 2;
        //     console.log(bar)
        // }
        // test();

        8//
        //    function fun() {
        //         var a = 10;
        //         function a() {

        //         }
        //         console.log(a);  //10
        //     }
        //     fun()

        9//
        // function fun() {
        //     var a = 10;
        //     var a = function() {}
        //     console.log(a)  //f（）{}
        // }
        // fun();

        10//
        // function fun() {
        //     console.log(a);  //ƒ a() { }
        //     function a() { }
        // }
        // fun();

        11//
        // function fun(a) {
        //     console.log(a)  //100
        //     var a = 10;
        // }
        // fun(100)

        12//
        function fun(a) {
            console.log(a)  //  f a(){}
            var a = 10;
            function a() {}
            console.log(a)
        }
        fun(100)
    </script>
</body>

</html>